﻿using System.Collections;
using System.Collections.Generic;
using System.Linq;

using Microsoft.EntityFrameworkCore;

namespace Jack.EntityFrameworkCore
{
    public interface IEfCoreRepository<TModel> : IRepository<TModel>, IQueryable<TModel>, IEnumerable<TModel>, IEnumerable, IQueryable, IRepository, IAsyncEnumerable<TModel>
        where TModel : class, IBaseModel, new()
    {
        DbContext DbContext { get; }
        DbSet<TModel> DbSet { get; }
        IQueryable<TModel> DbSetTracking { get; }
        IQueryable<TModel> DbSetNoTracking { get; }
    }
}
